<?php

namespace Packages\User\Models;

use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;

class UserInfoModel extends Model
{
    use SoftDeletes;

    /**
     * 与模型关联的表名
     *
     * @var string
     */
    protected $table = 'data_user_info';

    /**
     * 模型的连接名称
     *
     * @var string
     */
    protected $connection = 'pgsql_user';

    /**
     * 不可批量赋值的属性
     *
     * @var array
     */
    protected $guarded = ['id'];

    /**
     * 模型日期列的存储格式。
     *
     * @var string
     */
    protected $dateFormat = 'U';

    /**
     *  模型的默认属性值。
     *
     * @var array
     */
    // protected $attributes = [
    //     'delayed' => false,
    // ];

    /**
     * 数组中的属性会被隐藏。
     *
     * @var array
     */
    protected $hidden = ['deleted_at'];

    /**
     * 类型转换
     *
     * @var array
     */
    protected $casts = [
        'meta' => 'object',
        'created_at' => 'datetime:Y-m-d H:i:s',
        'updated_at' => 'datetime:Y-m-d H:i:s',
    ];

    /**
     * 获取用户token信息
     */
    public function userToken()
    {
        return $this->hasOne('Packages\User\Models\UserTokenModel', 'user_id', 'guid');
    }
}
